1. Field
Example embodiments relate generally to caching media, and particularly to providing hierarchical caching for online media.
2. Related Art
Online video is presently the largest component, or one of the largest components, of internet traffic. Caching such video adds additional requirements on traditional algorithms. For many conventional algorithms, hit-rate has traditionally been the key performance metric used to compare such algorithms. Increasingly newer caches use SSD memory for storage due to SSD memory's access speed and reliability. A lifetime of SSD memory may have a limited number of write cycles available. Replacement rate, or the number of write cycles per request is another key performance metric that may be of interest with such memory. According to some online video usage data, a significant part of the online video is used to rebroadcast recent TV shows which are initially quite popular but rapidly drop in popularity. Measuring the performance of caching algorithms with such rapid changes is another new performance metric. Typically online caching stores the video in small chunks of typically between 2 and 10 seconds. Further each video may be encoded into multiple video quality levels further increasing the number of chunks per video. In all, online video can increase the number of files that can be requested by end users in a caching system by a thousand fold or more.
Many conventional caching algorithms proposed in research over the last 30 years have not been implemented in commercial caches. For example, prominent examples of implemented schemes include simple schemes like the least recently used (LRU) and a few others like greedy dual size frequency (GDSF) and least frequently used with dynamic aging (LFU-DA).
Further, a size of a cache may be finite. Therefore, storage of a new asset may require the eviction of a stored asset. However, when determining which stored asset to evict, many conventional caching algorithms do not factor in the cost associated with re-obtaining each of the stored assets.